package com.yidu.dao;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Select;

import com.yidu.model.SnBranch;
import com.yidu.model.SnCommodity;
import com.yidu.model.SnRole;


import com.yidu.model.SnUser;
import com.yidu.model.SnUserRole;

/**
 * 
 * 描述:用户表dao类
 * @author 骆军
 * @下午1:58:30
 */
public interface SnUserMapper {
	
	/**
	 * 根据id删除
	 */
    int deleteByPrimaryKey(String userId);

    /**
     * 增加
     * @param record
     * @return
     */
    int insert(SnUser record);
    
    int insertSelective(SnUser record);
	
	/**
	 * 根据id查询
	 */
    SnUser selectByPrimaryKey(String userId);

    int updateByPrimaryKeySelective(SnUser record);

    int updateByPrimaryKey(SnUser record);
    
    /**
     * 查询所有
     * @param map 
     * @return 
     */
	List<SnUser> selectAll(Map<String,Object> map);
	
	/**
	 * 查询行数
	 * @param maps 条件
	 * @return 行数
	 */
	int findCount(Map<String, Object> maps);

	/**
	 * 查询用户角色
	 * @return  用户角色表
	 */
	//单独查一个表的用户角色和id的sql
	@Select("SELECT ro_id AS roId,ro_name AS roName FROM sn_role WHERE isva='1'")
	List<SnRole> findAll();
	/**
	 * 查询所有
	 * @return 用户model集合
	 */
	@Select("select user_id as userId , user_name as userName from sn_user where isva= '1' ")
	List<SnUser> query();
	
	/**
	 * 查询分公司下拉框
	 */
	List<SnBranch>findbyName();
	
	
	/**
	 * 修改获取角色权限
	 */
	List <SnUserRole> selectName(String id);

	/**
	 * 查询用户名是否已存在
	 * @param name
	 * @return
	 */
	int selectOnlin(String name);
}